home *** CD-ROM | disk | FTP | other *** search
/ PC-SIG: World of Education / PC-SiG's World of Education.iso / run / 3312 / fe.exe / CHPT6.TXT < prev    next >
Text File  |  1992-03-08  |  35KB  |  811 lines

  1.  
  2.  
  3.                                                             page 6-1
  4.  
  5.  
  6.                     CHAPTER 6:  EVALUATION OF CELLS
  7.  
  8. This chapter looks in detail at how FREE & EASY evaluates cells (or
  9. calculates the value of cells).  The evaluation of cells is actually
  10. very straightforward.  However, if you understand the way in which the
  11. cells are evaluated in detail, this will allow you to optimize the
  12. calculations in your sheets.  FREE & EASY also permits you to change
  13. the way in which a sheet is calculated.  Thus, you can customize FREE &
  14. EASY calculations to suit your own needs.  This chapter assumes you
  15. know what cells are, what cell contents are and what variables are.
  16. (See chapters 2 and 3)
  17.  
  18.  
  19. When a Cell Is Evaluated
  20.  
  21. Any cell is automatically evaluated when it is added to the sheet or
  22. when it is modified.  (The only exception to this occurs when a group
  23. of cells is added to the sheet with the "Table of cells" feature, or
  24. when an editing function is used to add cell(s) to the sheet).  There
  25. are also several other useful ways to evaluate a cell or a group of
  26. cells.  These are discussed later in the chapter.
  27.  
  28.  
  29. Elementary Cell Evaluation
  30.  
  31. The first step in evaluating a cell is to enter a valid expression in
  32. the cell contents.  When you add or modify cell contents FREE & EASY
  33. checks to see that you have used the correct syntax and shows syntax
  34. errors as they arise.  A complete list of syntax errors is in Appendix
  35. B.  Whenever you get an error message, remember that you can always
  36. press F1 to bring up a help screen with further explanation.
  37.  
  38. In general, any algebraically correct expression can be entered in the
  39. cell contents.  The contents are evaluated from left to right.  The
  40. following five operators are allowed:
  41.  
  42. The operator with highest priority is ^, raise to the power.  Some
  43. examples are:
  44.  
  45.         2^3=8
  46.         4^3=64
  47.  
  48. The operators with the next highest priority are multiplication (*)
  49. and division (/).  Some examples are:
  50.  
  51.         3*2.5=7.5
  52.         5/4=1.25
  53.         3*6/2=9
  54.  
  55. The operators with the least priority are addition (+) and subtraction
  56. (-).  Some examples of these are:
  57.  
  58.         2.5 + 3.6 = 6.1
  59.         5.7 - 1.9 = 3.8
  60.         3.9 - 1.2 + 2.7 = 5.4
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.                                                             page 6-2
  72. The following examples of cell contents demonstrate the priority of the
  73. five operators:
  74.  
  75.         2 + 3^2/4=4.25
  76.         -2.5*6=15
  77.         1 + 3/2 =2.5
  78.  
  79. Brackets, i.e. "(" and ")" can be used to change the priority order of
  80. operations.  You must use round brackets and not the square brackets,
  81. i.e. not "[" or curly brackets i.e. not "{".  Some examples of cell
  82. contents with and without brackets are:
  83.  
  84.          2 + 2^3 = 10          (2+2)^3=64
  85.          7 + 3*2 =13           (7+3)*2=20
  86.  
  87. In FREE & EASY the only limit to the number of brackets, or nesting of
  88. brackets, is the 200 character size limit on the cell contents.  You
  89. should note also that when you enter cell contents with brackets, FREE
  90. & EASY checks to make sure that the brackets balance, and if they do
  91. not gives the "brackets do not balance" syntax error.
  92.  
  93. When you use a number in FREE & EASY, its maximum size is bounded by
  94. 1.0E-300, 1.0E+300, -1.0E-300 and -1.0E+300.  If you try to enter a
  95. number beyond these bounds, you will get an "invalid number" error
  96. message.
  97.  
  98. When a cell is evaluated, its value is displayed in the cell itself
  99. according to the format for that cell.  Note that the display value and
  100. cell value are not always exactly the same (see Chapter 3).
  101.  
  102.  
  103. Evaluation Order of Cells
  104.  
  105. As mentioned, whenever a cell is added to the sheet or an existing cell
  106. is modified, it is automatically evaluated.  At any time the F9 key can
  107. be pressed and all cells in all sheets will be evaluated.  As FREE &
  108. EASY is evaluating the cells, it displays a message indicating which
  109. cell is presently being evaluated.
  110.  
  111. The cells on the sheets are evaluated as you would read a page.  Cells
  112. are evaluated from left to right for each line of the sheet, and the
  113. lines are evaluated from top to bottom.  If more than one sheet is
  114. loaded into FREE & EASY, the sheets are evaluated in numerical order.
  115. The title of the sheet at the top of the window shows evaluation order
  116. of the sheet.  For example a title of "3:FILE.FRE" means that the sheet
  117. entitled "FILE.FRE" is the third sheet evaluated.
  118.  
  119. The order in which cells are evaluated should be kept in mind when
  120. setting up your sheets.  As new sheets are started or loaded from disk,
  121. they are added to the end of the evaluation order of the sheets.  This
  122. can be changed, however.  See the "Change Evaluation Order of Sheets"
  123. section of this chapter for further details.
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.                                                             page 6-3
  137.  
  138. Reference to Other Cells by Location
  139.  
  140. It is possible to use the value of another cell in the cell contents.
  141. This cell value can be referred to by the location of that cell in the
  142. sheet or by the cell name.
  143.  
  144. The text on page 3-3 of the Instruction Book tells you the syntax to
  145. use in order to refer to a location on the sheet as well as how to use
  146. the short-cut method.
  147.  
  148. If the evaluation default "checK cell evaluation order" is set to
  149. "yes" and the cell location you choose is below or to the right of the
  150. cell whose contents you are entering, the warning "the cell referred to
  151. is out of evaluation order" is given.  If the location is on a sheet
  152. numbered after the cell whose contents you are entering, you will get
  153. the error message "cell on this sheet is out of evaluation order."
  154.  
  155. If the cell is evaluated (by pressing F9 for example) and the cell at a
  156. location referred to is not in the right order, an error message is
  157. given if the evaluation default "check cell order" is set to "yes".
  158.  
  159.  
  160. Reference to Values in the Sheet
  161.  
  162. It is also possible to use the value (number) at a location on the
  163. sheet in the cell contents.   The procedure for entering this location
  164. is the same as for entering the location of a cell on the sheet.  When
  165. you enter this location, if there is no cell or number at the location
  166. you choose, a "no cell or valid number at this location" warning is
  167. given.  When you evaluate the cell, if there is a location with no cell
  168. or valid number which is in the cell contents, an error message is
  169. given.
  170.  
  171. When you evaluate a cell and the cell contents contains a reference to
  172. a sheet location which has a cell, in general there is also a value on
  173. the sheet at this location, i.e. the display value of the cell.  FREE &
  174. EASY will use the actual value of the cell in the calculations and not
  175. the value displayed (remember that the value of the cell and its
  176. displayed value are not always exactly the same due to the cell
  177. format).
  178.  
  179.  
  180. Referencing a Cell Value by Name or a Variable Value
  181.  
  182. When you add a cell or modify the cell contents and you include a cell
  183. name or variable, FREE & EASY does not check to see whether the cell or
  184. variable can be found on the sheet or one of the other sheets loaded.
  185. The search is not made until the cell is evaluated.
  186.  
  187. When FREE & EASY is evaluating a cell and the cell contents contain a
  188. name, a search is started for a cell by that name or a variable by that
  189. name.  Whether the search is started for a cell of that name or for a
  190. variable of that name depends on the "evaluation defaults" (see section
  191. in this chapter on this topic).  See chapter 3 for how a variable is
  192. defined in the sheet.  The search always begins in the sheet in which
  193. the cell being evaluated is located.  All cells are checked for the
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.                                                             page 6-4
  203.  
  204. name.  The search for the variable begins at the cell being evaluated
  205. and works backwards in the sheet, i.e. to the left of the cell then up
  206. one line (just the opposite of how you would read a page).  If the top
  207. left corner of the sheet is reached without finding a variable defined
  208. by that name, the search continues on the same sheet starting at the
  209. bottom right corner of the sheet and working back to the cell.  If no
  210. cell or variable by that name has been found on the sheet and there are
  211. other sheets loaded and the evaluation defaults permit, a search is
  212. started in the sheet one less in the evaluation order of sheets.  If
  213. the cell with the name is found in sheet 3 and four sheets are loaded,
  214. the order of search for the name would be sheet 3, 2, 1 and then 4.
  215. The sheets are searched from bottom right corner to top left corner.
  216. If FREE & EASY cannot find a cell name or variable by the name found in
  217. the cell contents, then an evaluation error is given for that cell.
  218.  
  219. FREE & EASY allows a variable and cell to have the same name, even in
  220. the same sheet.  Whether the cell value or variable value is used to
  221. calculate the cell value depends on the evaluation defaults.  i.e.  The
  222. search is stopped as soon as a cell or variable by that name is found
  223. in the sheet(s).  Even though it is allowed to have a cell and variable
  224. of the same name, this is not recommended as it can lead to confusion.
  225.  
  226.  
  227. Redefining of Variables
  228.  
  229. FREE & EASY allows you to define the same variable more than once, even
  230. on the same sheet.  However, if you do this, it is recommended that you
  231. have a specific reason as it can lead to confusion.  If the same
  232. variable is defined above and below the cell in which it is referred
  233. to, the definition above the cell is used.  If defined to the right and
  234. left of the cell, the definition to the left of the cell is used.
  235. (Examining how FREE & EASY searches for variables as described in the
  236. previous section defines why this is so.)  If the cell is in sheet 3
  237. and the variable is defined in sheet 2 and sheet 4, the variable
  238. defined in sheet 2 is used.
  239.  
  240.  
  241. Refer to Variable Name or Sheet Location?
  242.  
  243. When you wish to use a variable in the cell contents, you may define
  244. the variable and use its name in the cell contents.  Alternately, you
  245. can refer to a number by its location in the sheet.  There are
  246. advantages and disadvantages to each method.
  247.  
  248. If you refer to a value (number) in the sheet by its location, FREE &
  249. EASY can find this value very quickly since it does not have to search
  250. a sheet(s) for the variable.  However, a sheet location in the cell
  251. contents is not as straightforward to understand as a name.  Also,
  252. remember that sheet locations in the cell contents can be relative to
  253. the cell or absolute addresses.  If you move the cell, a relative sheet
  254. address found in the cell contents moves accordingly.  (See chapter 4
  255. for more on this.)
  256.  
  257. If you use a variable name in the cell contents, then the cell contents
  258. can be much easier to understand, especially if you give the variable a
  259. meaningful name.  However, since FREE & EASY must find the variable to
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.                                                             page 6-5
  269.  
  270. evaluate the cell, the time taken to evaluate the cell can be longer.
  271. This time can be reduced by putting the variable as close to the cell
  272. as possible ( and to the left or above the cell).  You can also move
  273. the cell without problem since the reference to the value is by a
  274. variable.  (This is not necessarily true if the variable is defined in
  275. more than one location on the sheets.)
  276.  
  277.  
  278. Refer to a Cell Value by Cell Name or Location
  279.  
  280. In the cell contents, you can refer to the value of another cell by
  281. either the other cell's name or its location.  Unlike the previous
  282. section, in this case there is little difference to speed of
  283. evaluation.  If you refer to the value of a cell by name, the contents
  284. may be more easily understood, especially if that cell has a meaningful
  285. name.
  286.  
  287. As with referring to numbers by location, if you refer to a cell by its
  288. location on the sheet and you use a relative location, when you move
  289. either cell, you will not be referring to the cell you want.  This can
  290. lead to unforeseen results or an evaluation error.
  291.  
  292.  
  293. Functions
  294.  
  295. There are several functions available for use in the cell contents.
  296. All functions return a value which is used in calculating the value of
  297. the cell.  All FREE & EASY functions are three letters long.  When
  298. entering the cell contents, all functions are converted to upper case.
  299. Note that variable names, cell names and range names are not
  300. automatically converted to upper case.  i.e. These names are case
  301. sensitive.  You might wish to keep all these names in lower case; with
  302. all functions in upper case.  The cell contents will be easier to read
  303. in this way.
  304.  
  305. A function's argument must be in brackets; otherwise an error message
  306. will be given when you try to enter the cell contents.  For example,
  307. SIN(45) is acceptable for cell contents, but SIN45 in unacceptable.
  308.  
  309. There are three types of functions available--mathematical functions,
  310. range functions (more on ranges later in this chapter) and financial
  311. functions.  Many of the functions have limits on what the value of the
  312. argument can be.  A complete listing of all functions available is
  313. found in Appendix A.
  314.  
  315.  
  316. Mathematical Functions
  317.  
  318. All the common mathematical functions are available.  These include the
  319. trig functions (sine (SIN), cosine (COS) and tangent (TAN)), the
  320. hyperbolic trig functions (hyperbolic sine (SNH), hyperbolic cosine
  321. (CSH) and hyperbolic tangent (TNH)) and inverse trig functions (arc
  322. sine (ASN), arc cosine (ACS) and arc tangent (ATN)).  As well, there
  323. are the functions absolute value (ABS), natural logarithm (LNN), base
  324. 10 logarithm (LOG), square root (SQR) and exponential (EXP).  It is
  325. possible to have brackets within brackets for mathematical functions.
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.                                                             page 6-6
  335.  
  336. For example, SIN((30+15)/2) is acceptable.
  337.  
  338. A function's argument must evaluate to a valid FREE & EASY number or
  339. else an error message is given upon cell evaluation.  As well, many
  340. functions have other restrictions which limit what the argument can be.
  341. If outside of these limits, an error message is given.  If there is a
  342. problem with the function, FREE & EASY tells what the problem is and
  343. which function is causing the problem.  The following errors can occur:
  344.  
  345. A "domain error" occurs if the argument of the function is outside of
  346. what is mathematically allowed.  For example, the arc sine function
  347. (ASN) only allows an argument of -l.0 to +1.0.  Outside of this gives
  348. an error.
  349.  
  350. A "loss of accuracy" error occurs if the argument for a function is so
  351. large or so small that FREE & EASY cannot accurately calculate the
  352. value of the function.  For example the sine function (SIN) has no
  353. mathematical limit on what its argument can be, but FREE & EASY will
  354. give this error message if the argument is greater than 1.0E8 or less
  355. than -1.0E8.
  356.  
  357. An "overflow at function" error occurs if the evaluation of the
  358. function will give results greater than the limits of FREE & EASY.  For
  359. example, the exponential function (EXP) has no mathematical limit on
  360. what its argument can be, but FREE & EASY will give this error message
  361. if the argument is greater than 700.  This is because FREE & EASY
  362. cannot handle numbers larger than 1.0E300.
  363.  
  364. All the trig functions can be handled in radians, degrees or gradients.
  365. Which is used depends on the evaluation defaults.  (This will be
  366. discussed in further detail later in this chapter.)
  367.  
  368.  
  369. Range Functions
  370.  
  371. Several functions work with many values at once or a range of values.
  372. FREE & EASY allows you to define a rectangular area of the sheet called
  373. a range (see section on ranges in this chapter for further details.)  A
  374. range function will work with all values found in the range and return
  375. a value.  The range function takes a range name or range address as its
  376. argument.  The values found in the range can be in the form of numbers,
  377. variable name, cell name or cells.  If the range contains cells, make
  378. sure that the cell contents containing the range function are after the
  379. range, i.e.  so the cell in the range is evaluated before the range
  380. function is evaluated.
  381.  
  382. Most range functions are statistical functions.  They are as follows:
  383.  
  384. CNT:  returns the total number of entries in the range
  385. AVR:  returns the average value of values found in the range
  386. SUM:  returns the total value of values found in the range
  387. MIN:  returns the minimum value found in the range
  388. MAX:  returns the maximum value found in the range
  389. STD:  returns the standard deviation of values found in the range
  390. VAR:  returns the variance of values found in the range
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.                                                             page 6-7
  401.  
  402. There are several evaluation errors which can occur with range
  403. functions.  If there is no range by the name given in the range
  404. argument, the "cannot find the range" error will occur.  Many range
  405. functions require a range with at least one value.  If the range
  406. function AVR has no values in its range, the "no numbers in the range"
  407. error will occur.  Some range functions require at least two values.
  408. If the range function STD has only one value the "needs at least two
  409. values in the range" error is given.  If during the calculation, the
  410. value of the range function gets too large (greater than 1.0E300), the
  411. "overflow at range" error message is given.
  412.  
  413.  
  414. Financial Functions
  415.  
  416. Several financial functions are available.  These functions differ from
  417. mathematical functions in that they take several arguments.  For
  418. example, one financial function is FVA(100, 10, 5) and it takes three
  419. arguments as shown.  The arguments are separated by commas.  Each
  420. argument can be a number or any valid FREE & EASY expression.  Although
  421. brackets are required for all the arguments together, brackets are not
  422. required for individual arguments.
  423.  
  424. When a financial function is entered in the cell contents, FREE & EASY
  425. checks that the correct number of arguments are in the function.  If
  426. not, a syntax error is given.  When evaluating the function, FREE &
  427. EASY may yield an "overflow at function" error message if in the
  428. calculation of results, a value is encountered that exceeds FREE &
  429. EASY's limits.  In financial functions, many of the arguments should be
  430. integers, for example if "number of years" is required.  There is no
  431. check provided if this is not the case, and unpredictable results could
  432. occur.
  433.  
  434. The financial functions are:
  435.  
  436. term deposit:  TDP (principle, interest, years)
  437. future value of annuity:  FVA (payment, interest, years, payments per
  438.     year)
  439. present value of annuity: PVA (payment, interest, years, payments per
  440.     year)
  441. mortgage payments:  MTG (principle, interest, years, payments per year,
  442.     compounds per year)
  443. straight line depreciation:  SLN (cost, salvage, years)
  444. double declining balance depreciation:  DDB (cost, salvage, years,
  445.     period, rate)
  446. sum of the year's digits depreciation:  SYD (cost, salvage, years,
  447.     period)
  448.  
  449. In all cases, interest is entered in per cent.
  450.  
  451.  
  452. Methods to Evaluate Cells
  453.  
  454. FREE & EASY provides several ways to evaluate the cells in the
  455. sheet(s).  When you add a new cell or modify an existing cell, the cell
  456. is automatically evaluated.  There are several other ways to evaluate
  457. cells.  All of these are found in the "Eval" (evaluate) pull-down menu.
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.                                                             page 6-8
  467.  
  468. Each of these methods of evaluation has a short cut key which you will
  469. probably use more than the menu.  Even though a cell is evaluated when
  470. it is added or modified, you might want to reevaluate it when you
  471. change a variable, another cell, etc.
  472.  
  473. A single cell is evaluated with the F7 key.  You simply place the
  474. cursor anywhere on the cell and press F7.  The cell is then evaluated.
  475. If you want the cursor to go to the next cell to be evaluated, press
  476. F8.  If you want the cursor to go to the previous cell to be evaluated,
  477. press shift-F8.  The cursor will go to the next or previous sheet in
  478. the evaluation order if necessary to get to the next or previous cell
  479. to be evaluated.  This combination of keys (F7, F8 and shift-F8) can be
  480. very useful in debugging a sheet of logical errors as you can follow
  481. exactly how FREE & EASY does the calculations and you see what is in
  482. the cell contents of the cell to be evaluated (in the second bar from
  483. the top of the screen).
  484.  
  485. The F9 key is used to calculate all the cells in all the sheets.  As
  486. FREE & EASY is calculating the cells, it displays which cells in which
  487. sheet are being calculated.  The shift-F9 key combination calculates
  488. all the cells in the active sheet (file) i.e.  the sheet in which the
  489. cursor in found.  These keys are useful if you make a change in a cell
  490. or variable and want to see how many cells are affected.
  491.  
  492. The F10 key calculates from the first cell to be evaluated (in the
  493. first sheet) up to the present cursor location.  The shift-Fl0 key
  494. calculates from the present cursor location to the last cell to be
  495. evaluated in the last sheet.  The shift-F10 key is useful because it
  496. allows you to go through all the cells in the sheet.  If a cell has an
  497. evaluation error, the evaluation stops at that cell.  You can correct
  498. that cell then continue evaluating cells with shift-Fl0 without having
  499. to start the evaluation all over again.  Again these commands show
  500. which cell is being calculated during the evaluation.
  501.  
  502.  
  503. Evaluation Errors
  504.  
  505. Even though FREE & EASY checks for correct syntax when adding a new
  506. cell or modifying a cell, it is still possible to get an evaluation
  507. error.  Evaluation errors can be division by 0, variables that cannot
  508. be found, argument of a function that is not the right value, etc.  A
  509. full list of evaluation errors is in appendix B.  If a cell has an
  510. evaluation error, its value is set to zero (0.0).  When adding a cell
  511. or modifying a cell and a syntax error is present, FREE & EASY does not
  512. allow the cell to be added or modified.  However, when adding a cell or
  513. modifying a cell and an evaluation error in encountered, FREE & EASY
  514. allows the cell to be added or modified but gives the cell the value
  515. zero.
  516.  
  517. When evaluating cells and an evaluation error happens in a cell, the
  518. evaluation of cells stops and an error message is displayed.  The
  519. message tells in which cell the error is found and what the error is.
  520. At this point, you can press F1 to get a help screen with further
  521. explanation of that error.  Remember helps are context sensitive and
  522. every evaluation error has its own help screen which can be accessed
  523. with F1 (or from the help index if desired).  When you leave the error
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.                                                             page 6-9
  533.  
  534. message, the cursor will go to the cell which has the error.  You can
  535. correct the error at this point and continue the cell evaluation with
  536. shift-F10.  Remember also that you can always bring up the last error
  537. with shift F1 or with the "last Error" menu item in the "Help" pull-
  538. down menu.
  539.  
  540.  
  541. Calculation Order of Sheets
  542.  
  543. We have already seen that the cells in a sheet are calculated as you
  544. would read a page, from left to right and top to bottom.  Each sheet
  545. that is loaded is calculated sequentially.  At the top of the window is
  546. the name of the sheet (file) contained in that window and its order in
  547. the calculation of sheets.  If at the top of the window you see
  548. "3:FILE.FRE" this means that the sheet named "FILE.FRE" is evaluated
  549. third.
  550.  
  551. Whenever you start a new sheet or load a sheet from the disk, that file
  552. is added to the end of the evaluation order.  You can change this order
  553. at any time by using the "calc Order ..." menu item in the "Eval" pull-
  554. down menu.  Use the cursor control keys to highlight the sheet whose
  555. order you wish to change and press Enter.  Next highlight the new
  556. position in the evaluation order you wish for this sheet and press
  557. Enter.  Press Escape to leave this feature.  The prompt bar at the
  558. bottom of the screen will help you with this procedure.
  559.  
  560.  
  561. Evaluation Defaults
  562.  
  563. You have the option of changing many of the ways in which FREE & EASY
  564. evaluates the cells.  These options are changed with the "evaluation
  565. Defaults ..." menu item in the "Eval" pull-down menu.  Each of the
  566. evaluation features is discussed.
  567.  
  568. The "Trig functions" menu item allows you to calculate trig functions
  569. (e.g. SIN) and inverse trig functions (e.g. ASN) in "radians",
  570. "degrees" or "gradients".  PI (3.14159) radians equals 180 degrees
  571. equals 200 gredients.
  572.  
  573. When FREE & EASY is evaluating a cell and it encounters a name, this
  574. can be a cell name or a variable name.  The "Search priority for names"
  575. menu item tells FREE & EASY to start searching for a "cell" or a
  576. "variable" by that name.  As soon as one is found by that name, its
  577. value is used in the calculations.  If no variable is found by that
  578. name, FREE & EASY starts looking at the cell names and vice versa.
  579.  
  580. If the menu item "checK cell evaluation order" is set to "yes" then
  581. when another cell is referred to in the cell contents (by name or
  582. location in the sheet), then that cell must have been evaluated
  583. previously, i.e. in a sheet before in the evaluation order or above or
  584. to the left of that cell.  Otherwise an evaluation error message is
  585. given.  If set to "no" this check is not done.  It is recommended to
  586. keep this menu item set to "yes" (unless you have a specific reason not
  587. to); otherwise a confusing situation could result.
  588.  
  589. If the "search all files for Cell names" is set to "yes", then all
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.                                                             page 6-10
  599.  
  600. sheets loaded will be searched for a cell name.  If set to "no", then
  601. only the sheet containing the cell being evaluated will be searched for
  602. the cell name.  The same principle applies to the "search all files for
  603. Variable names" and "search all files for Range names" menu items.  For
  604. these menu items, if only one sheet is loaded, their setting has no
  605. effect.
  606.  
  607. The "assIgn variable to cell value" menu item if set to "yes" allows
  608. you to assign a variable the value of a cell with the equal sign
  609. (exactly the same way you would assign a number to the variable).  If
  610. this is set to "no" then the display value of the cell would equal the
  611. value of the variable.  It is only rarely that you would set this item
  612. to "yes".  In most cases, it makes more sense to use the cell name to
  613. refer to the value of that cell.
  614.  
  615. Once you have adjusted all menu items in the "Evaluation Defaults" pop-
  616. up menu, select the "Accept these defaults" menu item.  To change the
  617. evaluation defaults you can cancel by pressing Escape.
  618.  
  619.  
  620. Ranges
  621.  
  622. We have already talked briefly about what a range is and what it is
  623. used for in the section "Range Functions" in this chapter.  In
  624. summary, a range is a rectangular part of the sheet which you define
  625. and give a name.  Ranges will now be looked at in more detail to see
  626. how they are added, deleted, modified, shown and renamed.
  627.  
  628. All features used in working with ranges are found in the "Range" pull-
  629. down menu.  Ranges take up very little memory.  A range almost always
  630. takes less computer memory than a cell.  Memory for ranges is allocated
  631. dynamically i.e. allocated when you add the range.  There is no limit
  632. to the number of ranges which can be added.
  633.  
  634.  
  635. Range Address in the Cell Contents
  636.  
  637. A range in the cell contents can be defined by a range address.  A
  638. range address contains the sheet location of two opposite corners of a
  639. rectangular area of the sheet. e.g.
  640.  
  641.                     !0005!0010-!0015!0020
  642.  
  643. The first set of two numbers are the row and column of one corner of
  644. the range and the second set of two numbers are the row and column of
  645. the opposite corner.  These locations are separated by a '-' character.
  646. These locations can be relative, in which case the '!' character is
  647. used, or absolute in which case the '$' character is used.  If desired,
  648. one corner can be made relative and the opposite corner absolute.  One
  649. of the sample sheets in the FREE & EASY package gives an example where
  650. this is useful.  When referring to a range by an address, it must be in
  651. the same sheet as the cell is in.  (If you wish to refer to a range on
  652. another sheet you must use a range name)  When entering a range address
  653. this format must be followed exactly; otherwise a syntax error will be
  654. given.
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.                                                             page 6-11
  665.  
  666. When entering the cell contents and you press the '\' key and the
  667. cursor is next to a range function, e.g. SUM(, the menu will disappear
  668. and you will be in the highlight range mode.  In this case move the
  669. cursor to the desired location, press F7 and then define the range you
  670. wish.  Press Enter to accept the range address as relative, control-
  671. Enter to accept the range address as absolute or Escape to cancel. (The
  672. prompt bar gives you the instructions for this)  The range will be
  673. entered in the cell contents in the correct format.
  674.  
  675. When you press the '\' key while entering the cell contents and the
  676. cursor is on a valid range address, the range will initially be shown.
  677. From here you can adjust the range as desired.
  678.  
  679.  
  680. Adding Ranges
  681.  
  682. To add a new range to the sheet, use the "Add" menu item on the "Range"
  683. pull-down menu.  First you are asked to give the range a name.  Every
  684. range must have a name.  If you try to proceed without giving a range
  685. name, you will get the "there must be a range name entered" error
  686. message.  Each range in a sheet must also have a unique name.  If you
  687. give a range name that has already been used, you will get the "the
  688. range name entered is already used" error message.  There is no
  689. restriction on what the range name can be (unlike a cell name or a
  690. variable name) other than a maximum of 20 characters for the name.  It
  691. is recommended, however, that you use a meaningful name.
  692.  
  693. Once the range name has been entered, use the cursor to define the
  694. range.  A highlighted rectangular box is seen on the screen.  The
  695. cursor is in one corner of the box.  Move the cursor to adjust the size
  696. of the box.  The corner opposite the corner with the cursor is fixed.
  697. Press F5 or F6 to change the corner of the box in which the cursor is
  698. found.  You can also press F7 to change mode where the cursor control
  699. keys move the whole highlighted box rather than just the box size.
  700. Ranges can overlap each other if desired.  Press Enter to accept the
  701. range or Escape to cancel.
  702.  
  703. After the range has been added to the sheet, the range will be
  704. highlighted on the sheet.  You are encouraged to use text on the sheet
  705. to help show where the range is and what its name is.
  706.  
  707.  
  708. Contents of a Range
  709.  
  710. Remember that a range function does some sort of manipulation or
  711. calculation on all values found in the range.  (See section on "Range
  712. Functions" in this chapter for details).  Therefore it is important to
  713. know what sort of values are allowed in the range.  In general, four
  714. types of values are allowed in the range.  These are numbers, variable
  715. names, cell names and cells.
  716.  
  717. A variable cannot be defined within a range.  When evaluating a range
  718. function and FREE & EASY encounters a number, the program checks to
  719. ensure that the number is valid.  If not, the evaluation error message
  720. "invalid number" or "number too large or too small" is given.  If a
  721. name is found, FREE & EASY searches for a cell or variable of that name
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.                                                             page 6-12
  731.  
  732. and uses its value in the calculations.  (See section "Evaluation
  733. Defaults" for details about how FREE & EASY searches for these).  If
  734. none is found, the evaluation error "cannot find variable or cell name"
  735. is given.
  736.  
  737. Because of the restrictions as to what can be within a range,
  738. descriptive text cannot be within the range boundaries.  However, it
  739. can be just outside the range boundaries.  Remember to ensure that all
  740. data you want in the range is completely within the range i.e.  Do not
  741. straddle the range borders with names, numbers or cells.
  742.  
  743.  
  744. Range Menu
  745.  
  746. The menu items "Delete ...", "Resize/move ...", "reName ..." and "Show
  747. ..." in the "Range" pull-down menu all lead to a pop-up menu where all
  748. the ranges are shown for the active sheet.  This menu gives the name of
  749. the file and its evaluation order number, the name of each range along
  750. with the location of the range.  This is given as ur (upper row), uc
  751. (upper column), lr (lower row) and lc (lower column).  Use the cursor
  752. control keys to scroll through the ranges and highlight the desired
  753. range.  Press Enter to do the action or Escape to cancel.  You can also
  754. press F5 which will show the ranges in the next sheet.
  755.  
  756.  
  757. Delete Ranges
  758.  
  759. The "Delete ..." menu item leads to the pop-up menu for deleting
  760. ranges.  Highlight the range that you wish to delete and press Enter.
  761. You can delete as many ranges as you wish.  Press Escape to leave the
  762. menu.  You can delete all the ranges in the active sheet with the
  763. "deLete all ranges" menu item.  Before all ranges are deleted, you are
  764. asked to confirm that this is what you really want to do.
  765.  
  766.  
  767. Resize/Move Ranges.
  768.  
  769. The "Resize/move ..." menu item leads to the pop-up menu for modifying
  770. existing ranges.  Highlight the range you want to modify and press
  771. Enter.  (You can press Escape to cancel also).  The range you choose
  772. will be highlighted on the screen.  Adjust the size and/or position the
  773. same way as you do for adding ranges.  Press Enter when the range is
  774. the way you want it.  You can also press Escape to cancel the changing
  775. of the range.
  776.  
  777.  
  778. Renaming Ranges
  779.  
  780. The "reName ..." menu item leads to the pop-up menu for modifying
  781. existing ranges.  Highlight the range you wish to rename and press
  782. Enter.  You can now type in a new name.  Rename as many ranges as you
  783. wish.  Press Escape to leave the menu.
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.                                                             page 6-13
  796.  
  797. Showing Ranges
  798.  
  799. Only one range can be shown at a time.  If you add a range or resize or
  800. move a range when you finish the operation, the range you were working
  801. on remains highlighted once the operation is finished.  The "Show ..."
  802. menu item is used to highlight a range.  Highlight the range you wish
  803. to show and press Enter (you can press Escape to cancel this
  804. operation).  The cursor will go to the upper left corner of the range
  805. you choose, even if the active sheet has to be changed.  The range will
  806. remain highlighted until you choose another range to be shown, add a
  807. range, resize and move a range or choose the "Highlight" command in
  808. order to perform an editing function.  You can also choose the "show
  809. range Off" menu item to stop showing a range.
  810.  
  811.